﻿using Web.App.Infrastructure.ApplicationMessages.Contracts;

namespace Web.App.Infrastructure.ApplicationMessages.Implementation
{
    public class Failure : IFailure
    {

        private readonly object _attemptedValue;
        private readonly string _failureCode;
        private readonly string _failureText;
        private string _property;

        public Failure(object attemptedValue, string failureCode, string _failureText,string _property)
        {
            _failureCode = failureCode;
            this._property = _property;
            this._failureText = _failureText;
            _attemptedValue = attemptedValue;
        }

        public object AttemptedValue
        {
            get { return _attemptedValue; }
        }

        public string Property
        {
            get { return _property; }
        }

        public string FailureCode
        {
            get { return _failureCode; }
        }

        public string FailureText
        {
            get { return _failureText; }
        }
    }
}
